const multer = require('multer')
const mkdirp = require('mkdirp')
const path = require('path')

const upload = () => {
  const storage = multer.diskStorage({
    destination: async (req, file, callback) => {
      // 指定上传后保存到哪一个文件夹中
      await mkdirp(`./public/images`) // 创建目录,也可以手动创建
      callback(null, `public/images`)
    },
    filename: (req, file, callback) => {
      // 给保存的文件命名，需要返回全称，包括后缀
      var path = require('path')
      let extname = path.extname(file.originalname) // 获取后缀名
      let fileName = path.parse(file.originalname).name // 获取上传的文件名
      callback(null, `${fileName}-${Date.now()}${extname}`) //加上时间，防止文件重名
    }
  })
  return multer({ storage })
}

module.exports = {
  upload
}
